26 research outputs found

    ProofPeer - A Cloud-based Interactive Theorem Proving System

    Get PDF
    ProofPeer strives to be a system for cloud-based interactive theorem proving. After illustrating why such a system is needed, the paper presents some of the design challenges that ProofPeer needs to meet to succeed. Contexts are presented as a solution to the problem of sharing proof state among the users of ProofPeer. Chronicles are introduced as a way to organize and version contexts

    Proving Bounds for Real Linear Programs in Isabelle/HOL

    Get PDF
    Linear programming is a basic mathematical technique for optimizing a linear function on a domain that is constrained by linear inequalities. We restrict ourselves to linear programs on bounded domains that involve only real variables. In the context of theorem proving, this restriction makes it possible for any given linear program to obtain certificates from external linear programming tools that help to prove arbitrarily precise bounds for the given linear program. To this end, an explicit formalization of matrices in Isabelle/HOL is presented, and how the concept of lattice-ordered rings allows for a smooth integration of matrices with the axiomatic type classes of Isabelle. As our work is a contribution to the Flyspeck project, we demonstrate that via reflection and with the above techniques it is now possible to prove bounds for the linear programs arising in the proof of the Kepler conjecture sufficiently fast

    Abstraction Logic: A New Foundation for (Computer) Mathematics

    Full text link
    Abstraction logic is a new logic, serving as a foundation of mathematics. It combines features of both predicate logic and higher-order logic: abstraction logic can be viewed both as higher-order logic minus static types as well as predicate logic plus operators and variable binding. We argue that abstraction logic is the best foundational logic possible because it maximises both simplicity and practical expressivity. This argument is supported by the observation that abstraction logic has simpler terms and a simpler notion of proof than all other general logics. At the same time, abstraction logic can formalise both intuitionistic and classical abstraction logic, and is sound and complete for these logics and all other logics extending deduction logic with equality

    Syntax and Semantics of Babel-17

    Get PDF
    We present Babel-17, the first programming language for purely functional structured programming (PFSP). Earlier work illustrated PFSP in the framework of a toy research language. Babel-17 takes this earlier work to a new level by showing how PFSP can be combined with pattern matching, object oriented programming, and features like concurrency, lazy evaluation, memoization and support for lenses

    ProofScript: Proof Scripting for the Masses

    Get PDF
    corecore